import _regeneratorRuntime from "@babel/runtime/regenerator";
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";

/**
 * 系统管理--模板维护
 * @date 2019-6-26

 */
import request from 'utils/request';
import { CPAAS_PLATFORM } from 'utils/config';
import { parseParameters, isTenantRoleLevel, getCurrentOrganizationId } from 'utils/utils';
var tenantId = getCurrentOrganizationId();

function templatesApi() {
  return isTenantRoleLevel() ? "".concat(tenantId, "/common-templates") : 'common-templates';
}
/**
 * 数据查询
 * @async
 * @function fetchTemplates
 * @param {object} params - 查询条件
 * @param {?string} params.templateName - 模板名称
 * @param {!number} [params.page = 0] - 数据页码
 * @param {!number} [params.size = 10] - 分页大小
 * @returns {object} fetch Promise
 */


export function fetchTemplates(_x) {
  return _fetchTemplates.apply(this, arguments);
}
/**
 * 添加模板信息
 * @async
 * @function createTemplate
 * @param {object} params - 请求参数
 * @param {?string} params.templateCode - 模板编码
 * @param {?string} params.templateName - 模板名称
 * @param {?string} params.templateAvatar - 模板缩略图
 * @param {?string} params.templateCode - 流程分类描述
 * @param {?string} params.templatePath - 模板路径
 * @param {?string} params.enable - 启用
 * @returns {object} fetch Promise
 */

function _fetchTemplates() {
  _fetchTemplates = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(params) {
    var param;
    return _regeneratorRuntime.wrap(function _callee$(_context) {
      while (1) {
        switch (_context.prev = _context.next) {
          case 0:
            param = parseParameters(params);
            return _context.abrupt("return", request("".concat(CPAAS_PLATFORM, "/v1/").concat(templatesApi()), {
              method: 'GET',
              query: _objectSpread({}, param)
            }));

          case 2:
          case "end":
            return _context.stop();
        }
      }
    }, _callee);
  }));
  return _fetchTemplates.apply(this, arguments);
}

export function createTemplate(_x2) {
  return _createTemplate.apply(this, arguments);
}
/**
 * 编辑模板
 * @async
 * @function editTemplate
 * @param {object} params - 请求参数
 * @param {?string} params.templateName - 模板名称
 * @param {?string} params.templateAvatar - 模板缩略图
 * @param {?string} params.templateCode - 流程分类描述
 * @param {?string} params.templatePath - 模板路径
 * @param {?string} params.enable - 启用
 * @param {!string} params.objectVersionNumber - 版本号
 * @returns {object} fetch Promise
 */

function _createTemplate() {
  _createTemplate = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(params) {
    return _regeneratorRuntime.wrap(function _callee2$(_context2) {
      while (1) {
        switch (_context2.prev = _context2.next) {
          case 0:
            return _context2.abrupt("return", request("".concat(CPAAS_PLATFORM, "/v1/").concat(templatesApi()), {
              method: 'POST',
              body: params
            }));

          case 1:
          case "end":
            return _context2.stop();
        }
      }
    }, _callee2);
  }));
  return _createTemplate.apply(this, arguments);
}

export function editTemplate(_x3) {
  return _editTemplate.apply(this, arguments);
}

function _editTemplate() {
  _editTemplate = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(params) {
    return _regeneratorRuntime.wrap(function _callee3$(_context3) {
      while (1) {
        switch (_context3.prev = _context3.next) {
          case 0:
            return _context3.abrupt("return", request("".concat(CPAAS_PLATFORM, "/v1/").concat(templatesApi()), {
              method: 'PUT',
              body: params
            }));

          case 1:
          case "end":
            return _context3.stop();
        }
      }
    }, _callee3);
  }));
  return _editTemplate.apply(this, arguments);
}